using System;
using System.Collections.Generic;
using System.Text;

namespace MakeIT.Look.Imagem.Entidades
{
	public class BookcliVO
	{
		// Impedir o uso de new para esta classe
		protected BookcliVO() { }

		// Cria uma instancia desta classe
		public static BookcliVO CreateVO()
		{
			BookcliVO bookcli = new BookcliVO();
			bookcli.idPlayListVO = PlaylistVO.CreateVO();
			bookcli.idClienteVO = ClienteVO.CreateVO();
			return bookcli;
		}
		public static BookcliVO CreateVO(int idBookCli)
		{
			BookcliVO obj = CreateVO();
			obj.idBookCli = idBookCli;
			return obj;
		}
		// Descrição amigavel do conteudo deste objeto
		public override string ToString()
		{
			return (idBookCli!=null?idBookCli.ToString():"");
		}
		// Retorna PK concatenada com ";"
		public string PKString
		{
			get { return idBookCli.ToString(); }
		}

		#region MEMBROS DA CLASSE
		public int idBookCli
		{
			get { return this._idBookCli; }
			set { this._idBookCli = value; }
		}
		private int _idBookCli;
		public string bookCli
		{
			get { return this._bookCli; }
			set { this._bookCli = value; }
		}
		private string _bookCli;
		public DateTime vigenciaIni
		{
			get { return this._vigenciaIni; }
			set { this._vigenciaIni = value; }
		}
		private DateTime _vigenciaIni;
		public DateTime vigenciaFin
		{
			get { return this._vigenciaFin; }
			set { this._vigenciaFin = value; }
		}
		private DateTime _vigenciaFin;
		public bool? ativo
		{
			get { return this._ativo; }
			set { this._ativo = value; }
		}
		private bool? _ativo;
		public int? idPlayList
		{
			get { return this._idPlayList; }
			set { this._idPlayList = value; 
			      if(value!=null) this.idPlayListVO.idPlayList = (int)value; }
		}
		private int? _idPlayList;
		public int idCliente
		{
			get { return this._idCliente; }
			set { this._idCliente = value; 
			      if(value!=null) this.idClienteVO.idCliente = (int)value; }
		}
		private int _idCliente;
		public bool? publico
		{
			get { return this._publico; }
			set { this._publico = value; }
		}
		private bool? _publico;
		public DateTime cadastro
		{
			get { return this._Cadastro; }
			set { this._Cadastro = value; }
		}
		private DateTime _Cadastro;
		public string cadastradoPor
		{
			get { return this._CadastradoPor; }
			set { this._CadastradoPor = value; }
		}
		private string _CadastradoPor;
		public DateTime edicao
		{
			get { return this._Edicao; }
			set { this._Edicao = value; }
		}
		private DateTime _Edicao;
		public string editadoPor
		{
			get { return this._EditadoPor; }
			set { this._EditadoPor = value; }
		}
		private string _EditadoPor;
		public PlaylistVO idPlayListVO
		{
			get { return this._idPlayListVO; }
			set { this._idPlayListVO = value; }
		}
		private PlaylistVO _idPlayListVO;
		public ClienteVO idClienteVO
		{
			get { return this._idClienteVO; }
			set { this._idClienteVO = value; }
		}
		private ClienteVO _idClienteVO;
		#endregion
	}
}
